From: Jason Ish Date: Tue, 6 Jan 2026 22:15:09 +0000 (-0600) Subject: [PATCH 1/4] dnp3: check done state, not complete state for progress X-Git-Tag: archive/raspbian/1%7.0.10-1+rpi1+deb13u4^2~10 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=4a6626fd3e4021a67ea670965e3b954b61331c8d;p=suricata.git [PATCH 1/4] dnp3: check done state, not complete state for progress Complete is a flag used to tell if the message was completely parsed, as not all messages may be completely parsed if we don't know all their objects. However, they are still "done". In the alstate-progress callback, check the done flag, not the complete flag. Ticket: #8181 (cherry picked from commit d61eef9a8a0d92921989479de15e5cbfec3251a9) Origin: upstream, https://github.com/OISF/suricata/commit/63225d5f8ef64cc65164c0bb1800730842d54942.patch Bug: https://redmine.openinfosecfoundation.org/issues/8181 Subject: Upstream fix for CVE-2026-22259 part 1 Gbp-Pq: Name CVE-2026-22259_1.patch --- diff --git a/src/app-layer-dnp3.c b/src/app-layer-dnp3.c index 26422cb1..4f210f03 100644 --- a/src/app-layer-dnp3.c +++ b/src/app-layer-dnp3.c @@ -1436,7 +1436,7 @@ static int DNP3GetAlstateProgress(void *tx, uint8_t direction) SCReturnInt(1); } - if (dnp3tx->complete) + if (dnp3tx->done) retval = 1; SCReturnInt(retval);